import type { UserInfo } from '/#/store';

export interface LoginResultModel {
  token?: string;
}

export interface LoginByWalletParams {
  address: string;
  sign: string;
  message: string;
}

export interface LoginByEmailParams {
  email: string;
  password: string;
}

export type LoginParams = LoginByWalletParams | LoginByEmailParams;

export interface RegisterParams {
  email: string;
  verifyCode: string;
  password: string;
}

export interface UserParams {
  name: string;
  company: string;
  occupation: string;
  introduce: string;
}

export interface UserInfoResult {
  name: string;
  icon: string;
  email: string;
  address: string;
  nonce: string;
  password: string;
  follower: number;
  focus: number;
  introduce: string;
  occupation: string;
  company: string;
  type: number;
  id:number;
}

/**
 * @description: Get user information return value
 */
export type GetUserInfoModel = UserInfo;

export type UserInfoModel = UserInfoResult;

export interface UserInfoParams {
  id: number;
}

export interface NonceResultModel {
  nonce: string;
}
